#ifndef _TOLUA_FRAMEWORK_H
#define _TOLUA_FRAMEWORK_H

#include "tolua++.h"
#include <map>
#include <string>

#ifdef __cplusplus
extern "C"
{
#endif
	TOLUA_API void toluafix_push_longlong(lua_State* L, void* ptr, const char* type);
	TOLUA_API int toluafix_is_longlong(lua_State* L, int lo, const char* type, int def, tolua_Error* err);
	TOLUA_API long long toluafix_to_longlong(lua_State* L, int lo, int def);

	TOLUA_API double longlong2num(lua_State* L);
	TOLUA_API double num2longlong(lua_State* L);

#ifdef __cplusplus
} // extern "C"
#endif

std::string longlong2str(double num);
double str2longlong(std::string str);

#endif //_TOLUA_FRAMEWORK_H
